﻿// Project: Salient
// http://salient.codeplex.com
// 
// Copyright 2010, Sky Sanders <sky at skysanders.net>
// licensed under the GPL Version 2 licenses.
// http://salient.codeplex.com/license
// 
// 
// You may use this code under the terms of the GNU General Public 
// License (GPL) Version 2.
using System.Net;

namespace Salient.Net
{
    ///<summary>
    /// This type acts as a property bag for values
    /// that are relevant to the processing of an
    /// http request in an asynchronous environment.
    ///</summary>
    public class GatewayRequestState
    {
        ///<summary>
        ///</summary>
        public string Url { get; set; }
        ///<summary>
        ///</summary>
        public int? Timeout { get; set; }
        ///<summary>
        ///</summary>
        public string CacheRule { get; set; }

        ///<summary>
        ///</summary>
        public bool Cached { get; set; }
        ///<summary>
        /// 
        ///</summary>
        public double RequestInterval { get; set; }

        /// <summary>
        /// 
        /// </summary>
        public HttpWebRequest Request { get; set; }

        /// <summary>
        /// 
        /// </summary>
        public HttpWebResponse Response { get; set; }


        /// <summary>
        /// Arbitrary user data
        /// </summary>
        public object Data { get; set; }

    }
}
